package com.example.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * ClassName:warrantyClaimsPojo
 * Description:
 *
 * @Author 赵永峰
 * @Create 2025/3/18 0:01
 * @Version 1.0
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class warrantyClaimsPojo {
    // 主键
    private Integer id;

    // 创建时间
    private LocalDateTime establishTime;

    // 修改时间
    private LocalDateTime updateTime;

    // 删除标记
    private Integer deleteSign;

    // 编辑人
    private String editName;

    // 序号
    private String serialNo;

    // 经销商索赔编号
    private String dealerClaimNo;

    // 索赔编号
    private String claimNo;

    // 车辆识别码（Vehicle Identification Number）
    private String vin;

    // 索赔类型
    private String claimType;

    // 审核状态
    private String reviewStatus;

    // PWA编号（可能是指某种特定于流程或系统的编号）
    private String pwaNo;

    // 经销商代码
    private String dealerCode;

    // 经销商名称
    private String dealerName;

    // 品牌
    private String brand;

    // 保修开始日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String warrantyStartingDate;

    // 车型系列
    private String vehicleSeries;

    // 里程数
    private String mileage;

    // 活动代码（可能是指某种促销活动或召回活动的代码）
    private String campaignCode;

    // 生产日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String productionDate;

    // 备件购买日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String purchasedDateOfSparePart;

    // 发动机编号
    private String engineNo;

    // 变速箱编号
    private String transmissionNo;

    // 车牌号
    private String licensePlateNo;

    // 国家
    private String country;

    // 城市
    private String city;

    // 到货日期（可能是指车辆或备件到达经销商的日期）（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String arrivalDate;

    // 修理完成日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String repairCompletedDate;

    // 制造商
    private String manufacturer;

    // 供应商代码
    private String supplierCode;

    // 主要工时代码
    private String mainLaborCode;

    // 主要工时名称（可能是指维修工作的具体项目）
    private String mainLaborName;

    // 主要零件代码
    private String mainPartCode;

    // 主要零件名称
    private String mainPartName;

    // 系统（可能是指车辆中的某个系统，如电气系统、发动机系统等）
    private String systemUse;

    // 子系统
    private String subSystem;

    // 故障位置代码
    private String faultPositionCode;

    // 故障症状名称
    private String faultSymptomName;

    // 故障原因名称
    private String faultReasonName;

    // 分包类型（可能是指维修工作中是否涉及到了分包给其他公司或个人的情况）
    private String subletType;

    // 返回次数（可能是指备件或车辆因故障被返回的次数）
    private String returnTimes;

    // 故障描述
    private String faultDescription;
    //故障描述中文
    private String faultDescriptionChinese;

    // 处理结果
    private String disposalResult;
    //处理结果中文
    private String disposalResultChinese;

    // 备注
    private String remarks;

    // 工时费
    private String laborCost;

    // 零件费
    private String partCost;

    // 零件补偿费（可能是指因质量问题而给予的补偿）
    private String partCompensationCost;

    // 工时奖励金额（这个字段可能有误，通常不这样表述，可能是指某种奖励或补贴，但为了对应数据库字段，暂时保留）
    private String rewardAmountOfLabor;

    // 外包费用
    private String outsourcingCost;

    // 申请金额
    private String appliedAmount;

    // 索赔追踪金额（可能是指用于追踪索赔进度的资金）
    private String claimTracingAmount;

    // 申请日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String applicationDate;

    // 创建人
    private String creator;

    // 审核人
    private String reviewer;

    // 审核日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String reviewDate;

    // 首次审核日期（注意：这里应该使用日期类型，但为了与数据库varchar类型对应，暂时使用String）
    private String firstReviewDate;
    //记录这个索赔信息对应的问题关联类型：‘新增’，代表它是新增加的一个问题；‘关联’，是指以前已经有了，关联过去的。
    private String problemType;
    //记录问题的id
    private String problemId;
    //是否考核
    private String isExam;
    //IPTV3
    private String IPTV3;
    //TPTV6
    private String IPTV6;
    //IPTV12
    private String IPTV12;
    //IPTV24
    private String IPTV24;
    //IPTV36
    private String IPTV36;
    //零部件名称
    private String partName;
    //零部件供应商名称
    private String supplierName;
    //调查结论，主要用作原因归类用的
    private String investigate;
    //是否需要调返故障件
    private String isBack;
    //调返提出人
    private String backName;
    //调返提出时间
    private String backProposeDate;
    //调返到发动机车间时间
    private String backRUSEngineDate;
    //调返到发动机车间交接人
    private String backRUSEngineName;
    //是否返回国内
    private String isBackChina;
    //返回国内时间
    private String backCNDate;
    //返回国内接收人
    private String backCNName;
}
